package com.timeshare.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.timeshare.dto.NoticeRequest;
import com.timeshare.entity.Notice;

/**
 * 公告服务接口
 */
public interface NoticeService extends IService<Notice> {
    
    /**
     * 发布公告
     */
    void publishNotice(Long publisherId, NoticeRequest request);
    
    /**
     * 获取公告列表
     */
    Page<Notice> getNoticeList(Integer page, Integer size);
    
    /**
     * 获取公告详情
     */
    Notice getNoticeDetail(Long id);
    
    /**
     * 更新公告
     */
    void updateNotice(Long id, NoticeRequest request);
    
    /**
     * 删除公告
     */
    void deleteNotice(Long id);
}

